layui.use(['form', 'jquery', 'uploads','common','mycomm'], function () {
		let form = layui.form;
		let $ = layui.jquery;
		let common = layui.common;
		let mycomm = layui.mycomm;
	
	//输入色号后触发
	$("[name='info[color_code][]']").blur(function(){
		//防止查询不到的颜色，重复AJAX
		if($(this).attr('no')==$(this).val()) return false;
        var i=get_option($(this),"fabric_code").data('id');
		var url=$("#getcolor_url").html();;
		var id=get_option($(this),"fabric_id").val();
		var color_code=$(this).val();
		var data={id:id,color:color_code};
		var box=$('#color'+i);
		var color_name=get_option($(this),"color_name");
		var color_hex=get_option($(this),"color_hex");
		var sup_code=get_option($(this),"sup_code");
        var sup_name=get_option($(this),"sup_name");
        var exp_method=get_option($(this),"exp_method");
        var exp_name=get_option($(this),"exp_name");
		var sup_color=get_option($(this),"sup_color");
        var remark=get_option($(this),"remark");
		var gray=get_option($(this),"gray");
        var is_change=$(this).next('input[data-id^="is_change"]').val();

		if(color_code==''){
			box.css('background-color','#FFF');
			return false;
		}
		
		$.post(url,data,function(res){
			$("#groupid").find("li").remove();
			if(res!=null){
				var data=res;
				if(data.gray==1){		// 花灰色
					box.css('background','linear-gradient(to bottom, #CCC, #ffffff)');
				}else if(data.gray==0){	// 素色
					box.css('background-color','#'+data.color_hex);
				}else{
					box.css('background-color','#FFF');
				}
				var txt="";
				if(data.rose>0){
					txt=" (+"+data.rose+"元) ";
				}
				box.attr('data-original-title',data.color_name);
				box.attr('data-content',txt);
                //不覆盖原本的颜色
				if(color_name.val()=='') color_name.val(data.color_name);
				color_hex.val(data.color_hex);
				gray.val(data.gray);
				sup_code.val(data.sup_code);
				sup_color.val(data.sup_color);
                if(data.sup_name!=''){
                    sup_name.val(data.sup_name);
                    exp_method.val(data.exp_method).trigger('change');
                    exp_name.val(data.exp_name).trigger('change');
                }
                if(data.status==0 && remark.val()==''){
                    remark.val('取消');  
                }else if(remark.val()=='取消'){
                    remark.val('');  
                }
			}else{
                if(is_change==0){       //相同色号
                    sup_color.val(color_code);
                }
                box.css('background-color','#FFF');
			}
		},'json');
	});
	
	//获取同一组的选项对象
	function get_option(obj,name){
		if($('#ismobile').html()==1){
			return obj.parents('.li').find("[name='info["+name+"][]']");
		}else{
			return obj.parents('tr').find("[name='info["+name+"][]']");
		}
	}
	
	//表格回车触发TAB
	$("tbody input:text").bind('keydown', function (e) { 
		var key = e.which;
		if (key == 13 || (key > 36 & key <41 )){
			var inputs =$("tbody").find(":text"); // 获取表单中的所有输入框
			var idx = inputs.index(this); // 获取当前焦点输入框所处的位置

			if (idx != inputs.length - 3){
			  switch(key){
				case 13:
                  if (idx%9==0 || idx%9==2) {      //第一列
                      inputs[idx + 2].focus(); // 设置焦点
                      inputs[idx + 2].select(); // 选中文字
                  }else if (idx%9==4) {
                      inputs[idx + 5].focus(); // 设置焦点
                      inputs[idx + 5].select(); // 选中文字
    //              }else if (idx%12>2 && idx%12<6) {
					// $(this).parents('tr').find('select').focus();
				  }else{
					inputs[idx + 1].focus(); // 设置焦点 
					inputs[idx + 1].select(); // 选中文字
				  }
				  break;
				case 39:      //右
				  inputs[idx + 1].focus(); // 设置焦点 
				  inputs[idx + 1].select(); // 选中文字
				  break;
				case 37:      //左
				  if (idx >0){
					inputs[idx - 1].focus(); // 设置焦点 
					inputs[idx - 1].select(); // 选中文字
				  }
				  break;
				case 38:      //上
				  if (idx >0){
					inputs[idx - 9].focus(); // 设置焦点 
					inputs[idx - 9].select(); // 选中文字
				  }
				  break;
				case 40:      //下
				  if (idx < inputs.length - 23){
					inputs[idx + 9].focus(); // 设置焦点 
					inputs[idx + 9].select(); // 选中文字
				  }
				  break;
			  }
			  return false;// 取消默认的提交行为 
			} 
		}
	});
	
	//克重表格回车触发TAB
	$("tbody select").bind('keydown', function (e) { 
		var key = e.which; 
		if (key == 13 || key == 37 || key == 39 ){
		  var selects =$("tbody select"); // 获取表单中的所有输入框
		  var idx = selects.index(this); // 获取当前焦点输入框所处的位置
		  switch(key){
			  case 13:
				$(this).parents('tr').next().find(':text:first').focus();
				break;
			  case 37:        //左
				$(this).parents('td').prev().find(':text').focus();
				$(this).parents('td').prev().find(':text').select();
				break;
			  case 39:        //右
				$(this).parents('td').next().find(':text:first').focus();
				$(this).parents('td').next().find(':text:first').select();
				break;
		  }
		  return false;
		}
	});

	//触发退货按钮
	$("[name='status']").trigger('change');

	//输入编号后触发
	$("[name='info[fabric_code][]']").blur(function(){
        var id=$(this).attr('data-id');
        var fabric_code=$(this).val();
        if(fabric_code==''){
            //清空当行数据，重新统计
            clear_fabric(id);
        }else{
            load_fabric(id,fabric_code,1);
        }
	});
    
    syncDropdowns("[name='info[exp_method][]']");
    syncDropdowns("[name='info[exp_name][]']");
    
    // 新增：同步 exp_method 和 exp_name 的下拉框
    function syncDropdowns(selector) {
        $(selector).first().on('change', function() {
            var firstValue = $(this).val();
            if (firstValue === '') return;
    
            $(selector).not(':first').each(function() {
                if ($(this).val() !== '') {
                    $(this).val(firstValue).trigger('change');
                }
            });
            form.render('select');
        });
    }

	//自动加载面料数据
	function load_fabric(id,fabric_code,type){
	  var fabric=fabricList[fabric_code];

	  if(fabric!=undefined){
		var fabric_id=fabric.id;
		var fabric_name=fabric.fabric_name;
		var markup=fabric.markup;
        var sup_id=fabric.sup_id;
        var sup_code=fabric.sup_code;
        var sup_name=fabric.sup_name;
        var exp_method=fabric.exp_method;
        var exp_name=fabric.exp_name;
        var is_change=fabric.is_change;
        var cut_payment=fabric.cut_payment;

		if(type==1){
		  $('#markup_txt').html("【"+fabric_code+"】"+markup);
		  $("[data-id=fabric_id"+id+"]").val(fabric_id);
		  $("[data-id=fabric_name"+id+"]").val(fabric_name);
          $("[data-id=sup_id"+id+"]").val(sup_id);
          $("[data-id=sup_code"+id+"]").val(sup_code);
          $("[data-id=sup_name"+id+"]").val(sup_name);
          $("[data-id=is_change"+id+"]").val(is_change);
          $("[data-id=cut_payment"+id+"]").val(cut_payment);
          $("[data-id=exp_method"+id+"]").val(exp_method).trigger('change');
          $("[data-id=exp_name"+id+"]").val(exp_name).trigger('change');
          $("[data-id=status"+id+"]").val('已报单').trigger('change');
          form.render('select');
		}
	  }
	}

	//清除该行的所有数据
	function clear_fabric(id){
        $(".list-table-row[data-id='" + id + "']").find("input[type=text]").val("");
        $(".list-table-row[data-id='" + id + "']").find("select").each(function() {
            $(this).prop("selectedIndex", 0); // 选择第一个 option（通常是空值）
        });
    }
	
	//获取同一组的ID编号
	function get_id(v){
	  return get_option(v,"number").attr('data-id');
	}

	//判断是否填写产品
	function is_fabric(v){
	  var obj=get_option(v,'number');
	  if(obj.val()==''){
		return false;
	  }else{
		return true;
	  }
	}
});